iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 24
0

修改資料表中的某些資料,就會使用 UPDATE 的敘述句語法。
基本語法如下:

UPDATE <TableName>
SET <fieldName> = <New Content>;

舉前一天 Day23 新增資料表和資料 時新增的 Employee 資料表,要將裡頭的 salary 欄位統一為 40000 ,語法就會長成下面這樣:

SET SQL_SAFE_UPDATES = 0;
UPDATE Employee
SET salary = 40000;
SELECT * FROM Employee;

P.S. 如果出現 Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column. 請在後方加上 WHERE 指令或是將 SQL_SAFE_UPDATES 設為 0。
Day24Result1

修改單一筆的資料

比照上方的指令,在後方加上 WHERE 即可。

UPDATE Employee
SET salary = 38000
WHERE email = 'andy@abc.com';
SELECT * FROM Employee;

Day24Result2

修改單一筆的資料的某值為 NULL

在欄位條件沒有設定為 NOT NULL 的情況下,就直接在 SET 的值內直接寫入 NULL 即可。

UPDATE Employee
SET salary = NULL
WHERE email = 'sandy@abc.com';
SELECT * FROM Employee;

Day24Result3

修改單一筆中的多個欄位的資料

簡言之,在 SET 中以 "," 分隔多個欄位條件即可。
另外, 「+=」 、 「字串相加」...等在 JavaScript 常見的寫法,在 SQL 上是沒法使用的。

UPDATE Employee
SET salary = salary + 5000, email = CONCAT(email, '.tw')
WHERE birth_date > '1992-09-01';
SELECT * FROM Employee;

Day24Result4


上一篇
Day23 - 新增資料表和資料
下一篇
Day25 - 刪除資料
系列文
SQL 30天手把手入門30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言